<?php

namespace App\ServicesNew;

use App\Entities\OrderEntity;

/**
 * 用户余额
 * Interface UserBalanceService
 * @package App\Services
 */
interface UserBalanceService
{
    /**
     * 返回用户可用余额，单位为分
     * @param int $userId
     * @return int
     */
    public function getUseAbleAmountByUid(int $userId);

    /**
     * 使用
     * @param int $userId
     * @param int $useAmount
     * @return int
     */
    public function use(int $userId, int $useAmount);

    /**
     * 回退订单使用的余额
     * @param OrderEntity $order
     * @return void
     */
    public function orderRollback(OrderEntity $order);
}
